$(function () {

  // 渲染文章类别的选项
  cateInit();
  postInit();

  // 获取文章类别的请求
  function cateInit() {
    $.ajax({
      url: BigNew.category_list,
      success: function (response) {
        const htmlSte = template('cateTemp', response);
        $(".category").html(htmlSte);
      }
    });
  }

  // 通过url上的ID获取旧数据
  function postInit() {
    // 获取url上的ID值
    // 获取指定ID对应的数据
    let postId = itcast.getArguments(location.search).id;
    $.ajax({
      url: window.BigNew.article_search,
      data: { id: postId },
      success: function (response) {
        console.log(response);
        if (response.code == 200) {
          // 恢复分类选项
          $('.category').val(response.data.categoryId);
          // 恢复标题输入框
          $('#inputTitle').val(response.data.title);
          // 恢复主要内容
          $('#articleContent').val(response.data.content);
          // 恢复封面
          $('.article_cover').attr('src', response.data.cover);
          // 恢复日期
          $('#articleDate').val(response.data.date);
        }
      }
    });
  }

  // 监听图片文件上传事件
  $("#inputCover").on('change', function () {
    const myFile = $(this)[0].files[0];
    const url = URL.createObjectURL(myFile);
    $('.article_cover').prop('src', url);
  });

  // 监听编辑按键
  $('.btn-edit').on('click', function () {
    submit('已发布');
  });
  // 监听存为草稿按键
  $('.btn-draft').on('click', function () {
    submit('草稿');

  });
  // 发送编辑请求
  function submit(state) {
    const data = new FormData($('#form')[0]);
    let postId = itcast.getArguments(location.search).id;
    // 编辑功能还需要一个ID的参数
    data.append('id', postId);
    // 手动添加需要的参数（富文本和需要自主选择的参数）
    data.append('content', tinymce.activeEditor.getContent());
    data.append('state', state);

    $.ajax({
      type: "post",
      url: window.BigNew.article_edit,
      data,
      dataType: "json",
      contentType: false,
      processData: false,
      success: function (response) {
        if (response.code == 200) {
          alert(response.msg);
          window.location.href = './article_list.html';
        }
      }
    });
  }
})